Storing data to magnetic tape both to one set of tracks and in the same operation rewritten to another set of tracks

ABSTRACT

A recording system of a magnetic tape drive is operated to cause one separate set of write heads to write data discontinuously to magnetic tape as received, and to save the data, and, during the same operation, to cause another separate set of write heads to rewrite data to magnetic tape in a continuous arrangement. The writing may be in parallel and simultaneous. Thus, during the same operation, and at the same time, the separate sets of the plurality of write heads, temporarily write the received data to magnetic tape so that the sender can erase its copy, and rewrite the saved data to the magnetic tape in a permanent arrangement, without waiting to complete first writing received data, to complete subsequently rewriting the data, and repeating.

CROSS REFERENCE TO RELATED APPLICATION

The present Application is a continuation of parent application Ser. No.10/642,982, filed Aug. 18, 2003 now U.S. Pat. No. 6,970,311.

DOCUMENT INCORPORATED BY REFERENCE

Coassigned U.S. patent application Ser. No. 10/058,101 is incorporatedfor its showing of the initial writing of data to magnetic tape,accumulating that data and subsequently recursively writing theaccumulated data to the magnetic tape in a sequence.

FIELD OF THE INVENTION

This invention relates to storage of data to magnetic tape, and, moreparticularly, to storage of data which is to be physically written totape before a command complete response can be made, so that the entitysending the data is able to erase its data, knowing that a copyphysically exists on magnetic tape.

BACKGROUND OF THE INVENTION

Magnetic tape provides a means for physically storing data which may bearchived or which may be stored in storage shelves of automated datastorage libraries and accessed when required. Data stored in this mannerhas an aspect of permanence which allows copies of the data stored inmemory or disk at a host system to be erased, knowing that a copy existson magnetic tape. The available storage space at the host system isrelatively expensive, and there is a desire to release the storage spaceas soon as possible. Hence, data is typically transferred through anintermediate staging buffer, such as a hard disk, to the tape drive, andthere is also a desire to release and overwrite the staging buffer assoon as possible.

Thus, it is often desirable to “synchronize” the data.

“Synchronized data” is defined as data or other information which issubject to a “synchronizing event” or similar command requiring the tapedrive to not return “Command Complete” to a write type of command, or anindication that the command has been or will be successfully executed,until it has actually committed the data to media, specifically, themagnetic tape. As the result, if power is lost, the data can berecovered from the tape, whereas it may not be recoverable from avolatile DRAM storage of the tape drive buffer.

One example of a synchronizing event is a Write Filemark command withthe Immediate bit set to “0”. This means that the drive is not torespond immediately, but instead is to respond when the command hascompleted, meaning that any data sent as part of the command is writtenout to tape. A specialized case of a Write Filemark command is where thenumber of Filemarks field is also set to “0”, meaning that the WriteFilemark command has no data of its own, and thus the sole purpose ofthe command is to assure that all data which precedes the command mustbe written to tape before a command complete is sent. Hence, thiscommand is often referred to as a “Synchronize” command, as is known tothose of skill in the art.

Another example of a synchronizing event is a host selectable write modeknown to those of skill in the art as “non-buffered writes”, where animplicit synchronize must be performed after each record is written fromthe host. “Command Complete” is not returned for any write command untilthe data is successfully written on media.

Herein, writing any data record, group of records, or other mark, isdefined as a “transaction”, and writing such data record, etc., as theresult of a synchronizing event is defined as a “synchronizedtransaction”.

A difficulty with respect to magnetic tape is that the data is recordedsequentially without long gaps between data sets, whereas synchronizedtransactions are stored in separate bursts for each synchronizing event,with a noticeable time period before writing the next transaction. Thisrequires that the tape drive “backhitch” after writing the synchronizedtransaction in order to write the next transaction closely following thepreceding transaction. Tape is written or read while it is movedlongitudinally at a constant speed. Hence, a backhitch requires that thetape be stopped, reversed to beyond the end of the previous transaction,stopped again, and accelerated up to speed in the original direction bythe time that the end of the previous transaction is reached. As isunderstood by those of skill in the art, the backhitch process consumesa considerable amount of time, and, if a large number of smallsynchronized transactions are to be stored, the throughput of the tapedrive is reduced dramatically. As an example, backhitch times can varyfrom about half a second to over three seconds.

The incorporated '101 Application solves the problem by writingsynchronized data transactions to magnetic tape without stopping thetape, perhaps leaving gaps between the transactions, accumulates thesynchronized transactions in a buffer, and subsequently rewrites theaccumulated transactions from the buffer to the magnetic tape in asequence. This is now called “Recursive Accumulating BackhitchlessFlush”, or “RABF”, in the art. With large sized transactions relative tobuffer size, it is possible that the buffer will fill with theaccumulated transactions relatively quickly, forcing the recursivewriting of the transactions and holding off the receipt of additionaldata during the recursive writing, such that non-RABF performance willapproach that of RABF recording.

SUMMARY OF THE INVENTION

The present invention comprises a recording system, a magnetic tapedrive, a method, a computer program product, and control logic forwriting data to magnetic tape.

A recording system of a magnetic tape drive is operated so as to causeone separate set of write heads to write data to magnetic tape, and,during the same operation, to cause another separate set of write headsto rewrite data to magnetic tape. The writing may be in parallel and maybe simultaneous.

In one embodiment, having at least one buffer and a recording system, acontroller of the recording system operates the buffer(s) and therecording system to provide data from the buffer(s) to cause a separateset of the plurality of write heads to write the provided data to tracksof magnetic tape; and the controller saves the provided data at thebuffer(s). During the same operation, the controller operates thebuffer(s) and the recording system to provide saved data from thebuffer(s) to cause another separate set of the plurality of write headsto rewrite the saved data to other tracks of the magnetic tape in acontinuous arrangement. Thus, during the same operation, the separatesets of write heads, write data to magnetic tape, and rewrite saved datato the magnetic tape, perhaps simultaneously writing with the separatesets of write heads.

In a further embodiment, wherein the data is in the form of datatransactions, the controller additionally responds to an indication thatthe data transactions are to be written to magnetic tape as synchronizeddata transactions, and operates the buffer(s) and the recording systemto cause a separate set of the write heads to write the datatransactions to tracks of magnetic tape in a manner which isdiscontinuous due to having to empty the buffer in response tosynchronizing commands, and saves the data transactions at thebuffer(s). During the same operation, the controller operates thebuffer(s) and the recording system to cause another separate set of theplurality of write heads to rewrite saved data transactions to othertracks of the magnetic tape in a continuous arrangement.

In a still further embodiment, the controller additionally operates therecording system to cause the separate set of the plurality of writeheads to write separator signals between the discontinuously writtendata transactions.

In another embodiment, the controller additionally, for eachsynchronized data transaction, returns a command complete at aninterface upon completion of the writing a synchronized transaction totracks of magnetic tape in a discontinuous manner.

In a further embodiment, wherein the magnetic tape drive additionallycomprises a wrap control for translating the plurality of write headslaterally to different sets of wraps of the tracks of magnetic tape,such that either of the sets of write heads may write data to at leastsome of the wraps; the controller operates the wrap control, thebuffer(s) and the recording system to write data from the buffer(s) toone of the wraps, the data to be saved, and to rewrite saved data onanother wrap, potentially simultaneously; and to seek to an alternatewrap to continue to write the provided data to be saved, and to seekback to the one wrap and the another wrap. The rewriting of saved datacan then continue at the another wrap as does the writing of theprovided data at the one wrap.

In a still further embodiment, the wraps are accessed in a sequence,such that a wrap having the data to be saved follows in the sequence awrap at which the data is rewritten, such that a continuous string ofwraps are first written with the data to be saved, and then areoverwritten with the rewritten data.

In another embodiment, wherein the magnetic tape drive additionallycomprises a plurality of read heads for reading from magnetic tape whilethe magnetic tape is moved longitudinally with respect to the pluralityof read heads, and a read data system, the controller additionallyoperates the read data system to read one of the wraps at a time withone set of the plurality of read heads.

In another embodiment, wherein the magnetic tape drive additionallycomprises a wrap control for translating the plurality of write headslaterally to different wraps of the tracks of magnetic tape, thecontroller operates the wrap control, the buffer(s) and the recordingsystem to write data from the buffer(s) to one of the wraps in asequence of the wraps, and to rewrite the saved data to another of thewraps that is offset from the one of the wraps.

In a further embodiment, the controller selectively operates thebuffer(s) and the recording system to provide data from the buffer(s) tocause a separate set of the plurality of write heads to write theprovided data to tracks of magnetic tape, saving the provided data; and,during the same operation, operates the buffer(s) and the recordingsystem to provide saved data from the buffer(s) to cause anotherseparate set of the plurality of write heads to write the saved andprovided data to other tracks of the magnetic tape; and selectivelyoperates the buffer(s) and the recording system to provide data from thebuffer(s) to cause the plurality of write heads to write provided datato tracks of magnetic tape, comprising up to all sets of the writeheads.

In still another embodiment of the present invention, saved anddiscontinuously written data transactions may be temporarily rewrittenwhile the discontinuous writing of data transactions continues, allowingthe original discontinuously written transactions to be overwrittenbefore the data transactions are finally rewritten.

In a still further embodiment, wherein the magnetic tape driveadditionally comprises a plurality of read heads for reading frommagnetic tape while the magnetic tape is moved longitudinally withrespect to the plurality of read heads, the controller additionallyselectively operates the read data system to read one of the wraps at atime with one set of the plurality of read heads; and selectivelyoperates the read data system to read a plurality of the wraps at a timewith the plurality of read heads.

For a fuller understanding of the present invention, reference should bemade to the following detailed description taken in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of magnetic tape drive with a magnetic tapecartridge, which tape drive implements the present invention;

FIG. 2 is a diagrammatic illustration of synchronized data written onmagnetic tape employing a prior art methodology with backhitches;

FIG. 3 is a diagrammatic illustration of synchronized data written onmagnetic tape employing a prior art backhitchless flush and recursivewrite methodology;

FIG. 4 is a schematic representation of a tape head of the magnetic tapedrive of FIG. 1 and a length of magnetic tape with a plurality ofseparate servo bands;

FIG. 5 is a schematic representation of a prior art servo band of themagnetic tape of FIG. 4 and index positions of a servo transducer as ittracks the servo band;

FIGS. 6A and 6B are diagrammatic illustrations of data written onmagnetic tape in accordance with the present invention;

FIG. 7 is a diagrammatic illustration of an alternative arrangement ofdata written on magnetic tape in accordance with the present invention;

FIGS. 8A and 8B are diagrammatic illustrations of wraps of a magnetictape as data is written in accordance with the present invention;

FIG. 9 is a diagrammatic illustration of wraps of a magnetic tape asdata is written in accordance with another aspect of the presentinvention;

FIGS. 10A and 10B are diagrammatic illustrations of wraps of a magnetictape as data is written in accordance with another embodiment of thepresent invention; and

FIG. 11 is a flow chart depicting embodiments of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

This invention is described in preferred embodiments in the followingdescription with reference to the Figures, in which like numbersrepresent the same or similar elements. While this invention isdescribed in terms of the best mode for achieving this invention'sobjectives, it will be appreciated by those skilled in the art thatvariations may be accomplished in view of these teachings withoutdeviating from the spirit or scope of the invention.

Referring to FIG. 1, a tape drive 10 is illustrated which may implementthe present invention. The tape drive provides a means for reading andwriting information with respect to a magnetic tape cartridge 11. Acartridge and associated tape drive are illustrated, such as thoseadhering to the Linear Tape Open (LTO) format. An example of a singlereel tape drive is the IBM 3580 Ultrium magnetic tape drive based on LTOtechnology. A further example of a single reel tape drive and cartridgeis such as that discussed in U.S. Pat. No. 5,432,652, Comeaux et al.,issued Jul. 11, 1995. Another example of a single reel tape drive is theIBM 3590 Magstar magnetic tape drive and associated magnetic tapecartridge. An example of a dual reel cartridge is the IBM 3570 magnetictape cartridge and associated drive.

As is understood by those of skill in the art, a magnetic tape cartridge11 comprises a length of magnetic tape 14 wound on one or two reels 15,16. Also as is understood by those of skill in the art, a tape drive 10comprises one or more controllers 18 for operating the tape drive inaccordance with commands received from a host system 20 received at aninterface 21. The tape drive may comprise a standalone unit or comprisea part of a tape library or other subsystem. The tape drive 10 may becoupled to the host system 20 directly, through a library, or over anetwork, and employ the Small Computer Systems Interface (SCSI), FibreChannel Interface, etc.

The magnetic tape cartridge 11 may be inserted in the tape drive 10, andloaded by the tape drive so that one or more tape heads 23 reads and/orwrites information with respect to the magnetic tape 14 as the tape ismoved longitudinally by one or more motors 25. The magnetic tapecomprises a plurality of parallel tracks, or groups of tracks. In someformats, such as the LTO format, above, the tracks are arranged in aserpentine back and forth pattern of separate wraps, as is known tothose of skill in the art. Also as known to those of skill in the art, awrap control system 27 electronically switches to another set of readand/or write heads, and/or seeks and moves the read and/or write heads23 laterally of the magnetic tape, to position the heads at a desiredwrap or wraps, and, in some embodiments, track follows the desired wrapor wraps. The wrap control system may also control the operation of themotors 25 through motor drivers 28, both in response to instructions bythe controller 18.

Controller 18 also provides the data flow and formatting of data to beread from and written to the magnetic tape, in accordance with thepresent invention, employing a buffer 30 having a plurality of separatedata flow outputs 125, 126, and, employing a recording system havingmultiple recording channels 132 and 133, and a read data system 134having multiple read channels. The terminology “recording channel” and“read channel” is employed herein to respectively provide data to or toread data from a set of write heads and/or read heads to write and/orread in parallel. A plurality of recording channel circuits and logicand read channel circuits and logic may comprise a recording channel anda read channel, respectively.

As discussed above, magnetic tape provides a means for physicallystoring data which may be archived or which may be stored in storageshelves of automated data storage libraries and accessed when required.Tape drives often employ a “read after write” process to insure that thedata is written correctly to provide an aspect of permanence. Thispermanence allows copies of the data stored in memory or disk at thehost system 20 to be erased, knowing that a correct, or at leastcorrectable with ECC with margin, copy exists on magnetic tape.

The available storage space at the host system is relatively expensive,and there is a desire to release the storage space as soon as possible.Hence, data is typically transferred through an intermediate stagingbuffer, such as a hard disk, to the tape drive, and there is also adesire to release and overwrite the staging buffer as soon as possible.In the instant example, the staging buffer, if any, is considered tocomprise part of the host system 20.

In order to release the staging buffer, it is necessary to have anassurance that the data has actually been recorded on the magnetic tape14, and is not just in a volatile DRAM storage, such as buffer 30, whenit may be lost if power to the buffer or to the drive is lost. Thus, itis often desirable to “synchronize” the data, requiring the tape driveto not return “Command Complete” to a write type of command, or anindication that the command has been or will be successfully executed,until it has actually committed the data to media, specifically, themagnetic tape 14. Once the data has been written to the magnetic tape,if power is lost, the data can be recovered from the tape, whereas itmay not be recoverable from a volatile DRAM storage of the tape drivebuffer.

Various examples of synchronizing events which have the effect ofsynchronizing the data are known to those of skill in the art. Oneexample of a synchronizing event is a Write Filemark command with theImmediate bit set to “0”. This means that the drive is not to respondimmediately, but instead is to respond when the command has completed,meaning that any data sent as part of the command is written out totape. A specialized case of a Write Filemark command is where the numberof Filemarks field is also set to “0”, meaning that the Write Filemarkcommand has no data of its own, and the only meaning of the command isthat all data which precedes the command must be written to tape beforea command complete is sent. Another example is a host selectednon-buffered write mode implicitly requiring a synchronize for eachrecord.

Referring to FIG. 2, data is typically recorded on magnetic tapesequentially with only short gaps 40 between data sets, for examplebetween data sets 31 and 32, 32 and 33, etc. These gaps may be writtenwith an Interblock Gap (IBG) pattern, or may comprise a Data SetSeparator (DSS) pattern 40, as is known to those of skill in the art.The gap may comprise an actual unrecorded portion and a portion that isrecorded. For example, the LTO format DSS comprises a tone patternbetween data sets. As discussed above, the tape is written or read whilemotors 25 of FIG. 1 move the tape longitudinally. Data typicallycomprises a string of records arranged in data sets, each with a DSS,which are written with nominal spacing. Only occasionally, typicallywhen the buffer is empty, is the tape stopped.

However, if the data is synchronized, it must be immediately written totape from the buffer, and only after the synchronized transaction hasbeen written to tape is the transaction erased from the buffer andoverwritten, such that it cannot be the subject of a continuous dataflow. Hence, synchronized transactions instead must be writtenimmediately in separate bursts for each synchronization event. As theresult, after one data set is written for a synchronized transaction, inthe prior art of FIG. 2, to insure that the data sets are closelyspaced, the controller 18 of FIG. 1 typically operates the servo systemand motor drivers to stop the tape after the data set. Some finitedistance and finite time is required to stop the tape, and the tape isthen “backhitched”, reversed to beyond the end of the previous data set,stopped again, and accelerated up to speed in the original direction bythe time that the end of the first data set is reached, so that the DSSand the next data set may be written. As is understood by those of skillin the art, the backhitch process consumes a considerable amount oftime.

As discussed above, if a large number of synchronized transactions areto be stored, the throughput of the tape drive is reduced dramatically.

In the example of FIG. 2, records 50–53 are synchronized. A transactionmay comprise hundreds of records, but only transactions of one recordeach are illustrated for descriptive purposes herein. If a transactioncomprised of a record, or group of records, ends in the middle of a dataset, then an End Marker (EM) is written to signal that the remainder ofthat data set is empty. Synchronized transactions often can be multipledata sets in size, but are shown, for the purpose of illustration, asseparate data sets, and are illustrated in FIG. 2 as data records 50–53in data sets 31–34. Thus, the prior art process requires that the tapedrive 10 backhitch (shown by arrow 71) after writing data set 31 (tosynchronize transaction record 50), to be positioned to write data set32 with a minimum amount of DSS pattern in between; to backhitch 72after writing data set 32 to synchronize transaction record 51, andwrite data set 33; etc. The process continues until all of thesynchronized data has been written.

FIG. 3 illustrates the “Recursive Accumulating Backhitchless Flush”, or“RABF”, approach of the incorporated '101 Application, which solves theproblem by writing synchronized data transactions to magnetic tapewithout stopping the tape, perhaps leaving gaps between thetransactions, accumulates the synchronized transactions in a buffer, andsubsequently rewrites the accumulated transactions from the buffer tothe magnetic tape in a sequence. This approach reduces the number ofbackhitches for the synchronized data.

In one example, the controller detects synchronized received transactionrecord 50 of FIG. 3 stored in the buffer; writes the detectedsynchronized transaction record 50, with EM 60, from the buffer to themagnetic tape as data set 80; leaves an elongated gap, comprising anunrecorded gap and/or written separator signals 90 (e.g., DSS) to themagnetic tape following the written synchronized transaction record 50(data set 80), continuing the gap with or without separator signals 90until a subsequently received synchronized transaction 51 (data set 81)is written to the magnetic tape following the separator signals; andrepeats the detection of a synchronized received transaction (e.g.,record 51), writing the detected synchronized transaction (as data set81), and writing the gap of separator signals (e.g., separator signals91), etc., for each succeeding detected synchronized receivedtransaction, such that the tape is moved longitudinally during therepeated writing without stopping. Thus, there is no backhitch, the tapedrive continues to write the synchronized transactions without stopping.

To complete the example of FIG. 3 for the four illustrated synchronizedtransaction records 50–53, the next synchronized received transaction 52is detected, and is written as data set 82, and the gap separatorsignals (e.g., separator signals 92) are typically written for some orall of the distance until the next detected synchronized receivedtransaction 53 is written as data set 83, etc.

Thus, no backhitch is required, saving considerable processing time forcompleting the process for writing all of the synchronized data.

Then, in a further example, also illustrated by FIG. 3, space on themagnetic tape is saved by recursively writing the synchronized data toseparate wraps. To preserve the synchronized transactions 50–53 in theevent that power is lost, the data sets 80–83 are considered as workcopies of the transactions. Once the transactions have been recursivelywritten, the work copies are abandoned and may be overwritten.

First, the controller detects a pattern of synchronized transactions tobe written to the magnetic tape. A pattern may comprise a predeterminednumber of consecutive synchronized transactions of less than a certainlength. As one example, a pattern may comprise two consecutivesynchronized transactions, each having a length less than some number ofdata sets. As discussed above, the typical synchronized transaction iswritten to tape, and then the transaction is erased from the host systemwith the assurance that the transaction has been written to tape andwill not be lost as the result of a power loss.

The controller writes each detected synchronized transaction,illustrated as a record 50–53, of the detected pattern from the bufferto the magnetic tape, e.g., as data sets 80–83, above. Previoussynchronized transactions of the detected pattern may be excluded,having already been written in the manner discussed above before thepattern is detected. Thus, in FIG. 3, the previous synchronizedtransactions may comprise the previous data 99. Upon writing eachsynchronized transaction of the detected pattern from the buffer to themagnetic tape, the controller accumulates the synchronized transactionin the buffer; and subsequently recursively writes the accumulatedtransactions from the buffer to the magnetic tape in a sequence, e.g.,illustrated as data sets 100, 101. The recursive writing may comprise abackhitch to place the recursively written accumulated transactionsfollowing the preceding data 99, and with the nominal gap.

Thus, the synchronized transactions 50–53 have been immediately writtento the magnetic tape, and preserved against a power loss at the buffer,as work copies in data sets 80–83, while also being accumulated in thebuffer, and then recursively written to immediately follow the precedingdata 99 in data sets 100,101, saving space. Once the transactions havebeen recursively written, meaning that the data has been rewritten, thework copies 80–83 may be overwritten.

The point at which the accumulated synchronized data is recursivelywritten may comprise the termination of the pattern of synchronouslywritten transactions, may comprise a predetermined threshold, such asthe limit of capacity of the buffer to accumulate data records, or maycomprise the limit of capacity of the work space for the work copies80–83 and their separator signals 90–92.

As discussed above, with large sized transactions, it is possible thatthe buffer will fill with the accumulated transactions relativelyquickly, forcing the recursive writing of the transactions and holdingoff the receipt of additional data during the recursive writing, suchthat non-RABF performance will approach that of RABF recording.

FIG. 4 illustrates a magnetic tape 14, the magnetic tape having aplurality of separate longitudinal servo bands 111, 112, 113 and 114,which are laterally positioned on the magnetic tape, and with datatracks positioned between the servo bands. The tape head 23 comprises anumber of separately addressable data read and/or write heads 117, whichread and/or write data with respect to a number of parallel data tracks,and is provided with a separate servo head, or servo heads 120, 121,which are offset from the data read and/or write heads 117, so as totrack follow the servo track and allow the data read and/or write headsto be guided along the data track or tracks.

FIG. 5 illustrates one type of prior art servo band comprising a timingbased servo pattern of the type described in U.S. Pat. No. 5,689,384,which comprises patterns of transitions recorded at more than oneazimuthal orientation across the width of the servo band, and which aretherefore non-parallel. The lateral position is determined as a ratio oftwo servo pattern intervals, one pattern interval employing paralleltransitions such as two bursts 140 in separate patterns, and the otherpattern interval employing transitions which are parallel to themselves,but not parallel to the first burst of transitions such as between burst140 and burst 141. Each servo band may have a plurality of indexeddefined servo positions, such as 6 separate indexed defined servopositions 160, 161, 162, 163, 164 and 165 for a single servo band.Alternative types of servo bands are known to those of skill in the art,and the present invention may be implemented as well with respect toother servo bands.

Referring to FIG. 4, the data read and/or write heads 117 are typicallyshared between various data tracks or groups of data tracks, and aremoved between tracks or groups of tracks in the lateral direction of thetape. Each of the servo bands 111, 112, 113 and 114, provides the servoguidance for groups of data tracks, and the servo head 120, 121 of thetape head is repositioned laterally within a servo band at the variousindex positions to cause the data read and/or write heads 117 to accessdifferent data tracks, and is repositioned laterally to another servoband to access still further data tracks. In one example, the servobands are spaced apart to span the data tracks, which are locatedbetween the servo bands. This places a servo band close to thecorresponding data tracks to reduce the span between the outer readand/or write elements and the servo band, and reduce sensitivity tochanges in tape width between the time data is written and read back. Toinsure that the servoing is precise, two servo transducers 120, 121 maybe provided at either end of the tape head, straddling the data readand/or write heads. The lateral positioning may be obtained from eitherof the two servo bands, or by averaging or otherwise comparing data fromthe two servo bands.

Referring to FIGS. 1 and 4, in accordance with the present invention,the controller 18 may select a set of the write heads 117 and providedata from one or more selected separate data flow outputs 125, 126 ofthe buffer 30, for example, via a selected recording channels 132 and133, to the selected set of write heads 117. The ability to select writeheads is known in the art, employed, for example, if one set of writeheads is used to write in one direction of tape motion, and a differentset of write heads is used to write in the opposite direction. The sameis true of read heads. In accordance with the present invention,however, separate sets of heads are selected to write data in the samedirection, perhaps simultaneously. Alternatively, the recording channels132 and 133 may comprise circuitry that is arranged to provide data togiven write heads, and the recording channels are selected to therebyselect the set of write heads 117.

This has the effect of writing different wraps of data at the same time.For example, if the number of write heads is doubled from that of theprior art tape drive, the write heads may be arranged so that two wrapsmay be written simultaneously by the write heads of the tape head. Thesame is true for read heads, necessary for read-while-writefunctionality. Those of skill in the art understand that the spacing ofthe heads 117 and the operation of the wrap control 27 may be arrangedsuch that the wraps are compatible with the wraps of a tape head withfewer heads.

The buffer 30 may comprise a single buffer that has separate data flowoutputs 125, 126, for example, that are time slice multiplexed, or whichare separately accessed, and which address separate segments of thebuffer. Alternatively, buffer 30 may comprise multiple buffers that areemployed for different purposes.

Controller 18 may comprise at least one programmable computer processoroperating under the control of program code. The programmable computerprocessor may comprise any processor or microprocessor device known inthe art. The method of the present invention may be provided in the formof a computer program product usable with a programmable computerprocessor having computer readable program code embodied therein, andmay be supplied to the programmable computer processor in any of variousways as are known to those of skill in the art. Alternatively,controller 18 may comprise discrete logic, ASIC (application specificintegrated circuit), FPGA (field programmable gate array), etc.

Referring to FIGS. 1, 4, 6A, 6B and 7, in accordance with the presentinvention, the magnetic tape drive 10 is operated so as to cause oneseparate set of the write heads 117 to write data to magnetic tape 14,and, during the same operation, to cause another separate set of thewrite heads 117 to rewrite data to magnetic tape. The writing may be inparallel and may be simultaneous.

In this manner, data that is being supplied from a host system 20 andthat is to be written to magnetic tape 14, is supplied, via interface 21to buffer 30. If the data is indicated as being synchronized, such thatit must be immediately written to tape from the buffer, and only afterthe synchronized transaction has been written to tape, can the hostsystem overwrite the locally stored copy of the data, the synchronizedtransactions must be written immediately to magnetic tape 14 in separatebursts for each synchronization event.

In one embodiment of the present invention, controller 18 operates thebuffer(s) 30 and the recording system 132, 133 to provide data from anoutput of the buffer to cause a separate set of the plurality of writeheads to write the provided data to tracks of magnetic tape. Thus, thedata is written to magnetic tape 14 immediately, and, if in the form ofsynchronized transactions, the data transactions are written to tracksof magnetic tape in a discontinuous manner from the buffer(s). In afurther embodiment, the controller 18 additionally operates therecording system to cause the separate set of the plurality of writeheads to write separator signals between the discontinuously writtendata transactions. In a further embodiment, the controller 18additionally, for each synchronized data transaction, returns a commandcomplete at interface 21 upon completion of the writing a synchronizedtransaction to tracks of magnetic tape in a discontinuous manner.

In the example of FIG. 6A, the magnetic tape drive writes thetransactions to the magnetic tape on one of the wraps 170 withoutstopping. For example, transaction 175, provided from the buffer 30, iswritten to the magnetic tape; leaving an elongated gap, comprising anunrecorded gap and/or written separator signals 180 (e.g., DSS)following the written transaction record 175, continuing the gap with orwithout separator signals 180 until a subsequently received synchronizedtransaction 176 is written to the magnetic tape following the gap orseparator signals. Thus, the data is written to magnetic tape 14immediately, for example, in a “backhitchless flush”, or “BF” type ofoperation.

The controller 18 saves the provided data at the buffer 30. In oneexample, the data remains in the buffer at the original location atwhich it was written, and the data at that address is protected frombeing overwritten by succeeding data. In another example, the data ismoved to another address of the buffer which is designated for data thatis saved and is not to be overwritten. In still another example, buffer30 comprises multiple buffers, and the data, as it is written tomagnetic tape, is also transferred from a first buffer to a secondbuffer for saved data.

Thus, as the data is supplied to the magnetic tape drive 10, it iswritten to magnetic tape, and is saved at the buffer 30.

During the same operation, the controller operates the buffer 30 and therecording system to provide saved data from the buffer 30 to causeanother separate set of the plurality of write heads to rewrite thesaved data to other tracks of the magnetic tape in a continuousarrangement. In the example of FIG. 6A, a transaction 174 that had beenwritten to BF wrap 170 and saved, is written to a rewrite wrap 190. Thetransactions are rewritten without the extended gaps of the BF wrap,thereby saving time when the transactions are read. Thus, during thesame operation, the separate sets of write heads, write data to magnetictape, and rewrite saved data to the magnetic tape, perhapssimultaneously writing with the separate sets of write heads.

Since there is typically a wait between synchronized transactions fromthe host system 20 of FIG. 1, leading to the long gaps 180 betweentransactions, the buffer 30 empties more rapidly when rewriting data tothe rewrite wrap, than new data is received from the host system.

The rewriting is therefore a subset of the time that BF writing isoccurring. As the result, the rewriting may wait until enough data hasbeen saved to begin rewriting. Even so, the buffer is likely to run outof data to rewrite. At this point, the rewriting stops. New datatransactions may continue to be written to the BF wrap. Alternatively oradditionally, a backhitch may occur to a previous position on the BFwrap, such that the new data transactions can overwrite BF datatransactions that have been rewritten.

Once enough data to begin rewriting has been written to the BF wrap andhas been saved, a backhitch or a forward movement may be conducted tothe end of the previously rewritten transaction, and the next data thathad been saved but not rewritten is rewritten to the rewrite wrap. Thedata transactions that had been written to the BF wrap and not rewrittencannot be overwritten unless temporarily written elsewhere, as will bediscussed. Thus, if such data transactions are encountered, the BFwriting must be stopped until the data transactions are rewritten.

In the example of FIG. 6A, the buffer runs out of data to rewrite uponrewriting data transaction 174. BF transaction 175 had been written tothe BF wrap 170, and, while the system waits for more data to accumulatein the buffer to rewrite, for example, half of the buffer capacity, BFwriting may continue, as discussed above, writing transaction 176 to theBF wrap. In one alternative, a backhitch 191 may occur aftertransactions 175 and 176, etc., are written to the BF wrap, and saved,and after enough data has been saved to begin rewriting. In backhitch191, the tape is moved to the last rewritten transaction 174. However,BF writing must then be stopped, since transactions 175, 176, etc., ofBF wrap 170 have not been rewritten, and are not overwritten.Alternatively, the transactions may be temporarily written elsewhere,allowing the initial copy to be overwritten, as will be discussed. Then,the saved transactions 175′, 176′, etc., are rewritten to the rewritewrap 190, appended to transaction 174, and the appearance will be asthough backhitch 192 had occurred for the rewrite wrap. Subsequent torewriting the saved data transactions 175′ and 176′, etc., to themagnetic tape to a rewrite wrap 190, the data of the BF wrap 170 thathad been saved and rewritten, may be overwritten, shown in thesubsequent state as wrap 170′. Thus, after a backhitch, the writing ofnew data to the BF wrap 170′ may resume, and the data is once againwritten to magnetic tape 14 immediately in the backhitchless flush typeof operation. Alternatively, a backhitch 193 may occur when the bufferruns out of data to be rewritten, the backhitch to a previous positionon the BF wrap 170′, at a point where the data transactions have beenrewritten, and the data may now be overwritten. BF writing may thencontinue, as discussed above, writing transactions, up to transaction185 of the BF wrap. When enough data has been saved to begin rewriting,the tape is moved forward to the end of the last rewritten transaction174. If a transaction 175, 176 of BF wrap 170 is encountered that hasnot been rewritten, the BF writing must be stopped, since transactions175, 176, etc., have not been rewritten and are not overwritten.Alternatively, the transactions may have been temporarily rewrittenelsewhere and thus may be overwritten. The tape is moved forward to theend of the last rewritten transaction 174. Then, the saved transactions175′, 176′, etc., are rewritten to the rewrite wrap 190, appended totransaction 174, and the appearance will be as though backhitch 192 hadoccurred for the rewrite wrap. Subsequent to rewriting the saved datatransactions 175′ and 176′, etc., to the magnetic tape to a rewrite wrap190, the data of the BF wrap 170 that had been saved and rewritten, maybe overwritten. The data saved in the buffer 30 of FIG. 1 may also beoverwritten. Thus, the writing of new data to the BF wrap 170′ mayresume, and the data is once again written to magnetic tape 14immediately in the backhitchless flush type of operation.

The performance of the arrangement of the embodiment of FIG. 6A islimited by the requirement to prevent overwriting data that has not yetbeen rewritten.

In one alternative, referring additionally to FIG. 6B, data saved asaccumulated in buffer 30 of FIG. 1 and discontinuously written to wrap170 of FIG. 6A, such as data transactions 175, 176, etc., aretemporarily rewritten, potentially while the discontinuous writing ofdata transactions continues. In the example of FIG. 6B, datatransactions 175″ and 176″ are temporarily rewritten at wrap 190′, adistance from the location of finally rewritten data transaction 174. Atan appropriate time, either by backhitch 191, or by writingdiscontinuous data transactions and/or temporarily rewrittentransactions on another wrap in the reverse direction, the recordingsystem finally rewrites data transaction 175′, 176′ on wrap 190, and isable to simultaneously begin writing new discontinuous data transactionson wrap 170, overwriting the original discontinuous data transactions175 and 176.

FIG. 7 illustrates an alternative arrangement, employing a seek to adifferent BF wrap, to avoid the necessity of waiting to overwrite datathat has not been rewritten.

In the example of FIG. 7, data transactions are written to BF wrap 198,including transactions 202 and 203, and saved, and saved datatransactions are written to rewrite wrap 199, including transactions200, 201, and 202′. In the example, the buffer runs out of data uponrewriting data transaction 202′. A seek 210 is conducted to an alternateBF wrap 211. The seek may be direct, or may involve forward or backwardmotion of the tape.

The seek allows the writing of BF transactions to continue at alternatewrap 211, while the saved, but not rewritten, BF transaction 203 ismaintained on wrap 198. As an example, BF transactions are written toalternate wrap 211, including transaction 212. When enough data has beensaved to begin rewriting, a seek 216 is conducted back to the rewritewrap 199, and the tape is moved to the end of the last rewrittentransaction 202′. Then, the saved transactions, including transaction203′, are rewritten to the rewrite wrap 199, appended followingtransaction 202′, and the appearance will be as though backhitch 217 hadoccurred for the rewrite wrap. The writing of new data to the BF wrap198 may resume, shown in the subsequent state as BF wrap 198′. Theresumed writing, in the example, begins with BF data transaction 213,and the data is once again written to magnetic tape 14 immediately inthe backhitchless flush type of operation.

At the next instance of the buffer running out of data to be rewrittento the rewrite wrap, the tape may be moved, such as a backhitch to aprevious position on the BF wrap 198′ at a point where the datatransactions have been rewritten, and the data may now be overwritten,up to a point where data transactions are encountered that have not beenrewritten, and that cannot be overwritten. Alternatively, BF writing maycontinue forward at the BF wrap 198′, as discussed above with respect toFIGS. 6A and 6B, writing transactions, up to the end of tape for thatwrap, or until data transactions are encountered that have not beenrewritten, and that cannot be overwritten. Still alternatively, a seekmay again occur to the alternate BF wrap 211 of FIG. 7, again up to theend of tape for that wrap or data transactions are encountered that havenot been rewritten, and that cannot be overwritten.

Thus, although not necessary, the performance improves with one seek 210to another track, allowing BF writing to occur back to the longitudinalposition where the rewriting ended. The seek allows the BF writing toresume immediately on the alternate wrap 211. The seek back 216 allowsthe rewriting to continue on the original rewrite wrap 199, and allowsthe BF writing to again resume immediately back on the first wrap 198′.

Alternatively, BF writing may continue on BF wrap 198, and savedaccumulated data transactions may be temporarily rewritten subsequentlyon wrap 199, or rewritten subsequently on a wrap related to wrap 211.Then, the original discontinuous data transactions may immediately beoverwritten with the final rewriting of data transactions 202′, 203′,etc.

The BF wraps and rewrite wraps may be provided in alternativearrangements. In the example of FIGS. 8A and 8B, the BF wraps areallocated, as are the rewrite wraps. Thus, the data is from the buffer30 of FIG. 1 to one of the wraps in a sequence of the wraps, and thesaved data is rewritten to another of the wraps that is offset from theone of the wraps.

FIG. 8A represents a “pass 1” of rewriting saved data to a rewrite wrap240. Wraps 241, 242 and 243 represent other rewrite wraps. During thesame operation, the received data is written to BF write wrap 245. Wraps246, 247 and 248 represent other BF write wraps which are offset fromthe rewrite wraps such that the separate sets of the tape write headsmay simultaneously write at a BF write wrap and a rewrite wrap. If analternate BF wrap is employed as discussed above, it will comprise oneof the BF wraps 245, 246, 247 and 248. In the example of the “pass 1”,BF write wrap 246 is the alternate BF wrap.

FIG. 8B represents a “pass 2” of rewriting saved data to the rewritewraps, illustrating rewrite wrap 241. Wrap 240 in the example hasalready been rewritten with saved data. During the same operation, thereceived data is written to BF write wrap 246, which is offset from therewrite wrap 241 such that the separate sets of the tape write heads maysimultaneously write at a BF write wrap 246 and the rewrite wrap 241. Ifan alternate BF wrap is employed as discussed above, it will compriseone of the BF wraps 245, 246, 247 and 248. In the example of the “pass2”, BF write wraps 247 or 248 may be the alternate BF wrap.

The wrap offset is such that separate BF wraps and rewrite wraps areavailable at the tape write head offset for the separate sets of tapewrite heads, and may comprise the index positions of FIG. 5, where, ateach index position, the separate sets of write heads write the twowraps, or comprises other suitable offset arrangements. Referring toFIGS. 4 and 5, in the arrangement of FIG. 5, alternate write heads 117may be selected for the two wraps, or write heads 117 at opposite endsof the tape head 23 may be selected for the two wraps. Otherarrangements, such as selecting adjacent pairs of heads for each wrap,may alternatively be employed.

In a further embodiment, the controller 18 of FIG. 1 selectivelyoperates the buffer 30 and the recording system to provide data from thebuffer to cause a separate set of the plurality of write heads 117 ofFIG. 4 to write the provided data to tracks of magnetic tape, saving theprovided data; and, during the same operation, operates the buffer 30 ofFIG. 1 and the recording system to provide saved data from the buffer tocause another separate set of the plurality of write heads to write thesaved and provided data to other tracks of the magnetic tape, forexample, as illustrated by FIG. 6, FIG. 7, or FIG. 8; and, selectivelyoperates the buffer 30 of FIG. 1 and the recording system to providedata from the buffer to cause the plurality of write heads 117 of FIG. 4to write provided data to tracks of magnetic tape, comprising up to allsets of the write heads, as illustrated by “full head” data of FIG. 9,with the pattern of write heads similar to that illustrated in FIG. 8.Thus, if there is no synchronized data or no need to write data tomagnetic tape, save the data and subsequently rewrite the data to thetape, then all the heads may selectively be employed to write inparallel, e.g. to wraps 250 and 251 of FIG. 9. If the data comprises apattern of synchronized data, the controller selectively writes the datato a BF wrap 245 of FIG. 8, and rewrites saved data to rewrite wrap 240.The selectivity may occur on the basis of patterns of data transactions,or, more likely, on the basis of the data that will be provided to thetape cartridge. Thus, the host system or operator may indicate that thedata for the magnetic tape cartridge 11 of FIG. 1 will be synchronizeddata, or will not be synchronized data, and the controller 18 selectsthe write heads to write the pattern of FIG. 8A or of FIG. 9,accordingly.

In a still further embodiment, wherein the magnetic tape driveadditionally comprises a plurality of read heads 117 in FIG. 4 forreading from magnetic tape while the magnetic tape is movedlongitudinally with respect to the plurality of read heads, thecontroller additionally selectively operates the read data system 134 ofFIG. 1 to read one of the wraps at a time with one set of the pluralityof read heads, when the data is written as rewritten data, for example,as illustrated in the pattern of FIG. 8A and FIG. 8B; and selectivelyoperates the read data system to read a plurality of the wraps at a timewith the plurality of read heads when the data is written as full writedata, for example, as illustrated in the pattern of FIG. 9. Theindication whether the data is in the form of full write data or in theform of rewritten data may be in the index or similar information at thebeginning of the tape.

FIGS. 10A and 10B illustrate an alternative arrangement of the use ofthe wraps for writing data, and rewriting saved data. In a still furtherembodiment, the wraps are accessed in a sequence, such that a wraphaving the data to be saved follows in the sequence a wrap at which thedata is rewritten, such that a continuous string of wraps are firstwritten as BF wraps with the data to be saved, and then are overwrittenwith the rewritten data.

FIG. 10A represents a “pass 1” of rewriting saved data to a rewrite wrap270. Wrap 271 comprises a BF wrap to which the received data is written,during the same operation. In the example of the “pass 1”, wrap 272 isthe alternate BF wrap.

FIG. 10B represents a “pass 2” of rewriting saved data to the rewritewraps, illustrating the overwriting of former BF wrap 271 as rewritewrap 271′. Wrap 272′ in the example now becomes the BF write wrap. If analternate BF wrap is employed as discussed above, it will comprise oneof the remaining previously unwritten wraps, such as wraps 273. Thus,the wrap having the data to be saved 272′ is next in the sequence from awrap 271′ at which the data is rewritten, such that a continuous stringof wraps are first written as BF wraps with the data to be saved, andthen are overwritten with the rewritten data.

The controller 18 of FIG. 1 additionally operates the plurality of readheads 117 of FIG. 4 and the read data system 134 of FIG. 1 to read oneof the wraps 270′, 271′ of FIG. 10B at a time with one set of the readheads.

FIG. 11 comprises a flow chart of an embodiment of the computerimplemented method of the present invention. Data is received at step300, and stored in the buffer(s) in step 301, such that the data may bewritten to tape. In step 303, the controller determines whether thewrite operation will be a multi-set write, using sets of write heads, ora full head write. If it is a full head write, as discussed above, instep 305, the controller selects the full head write, operating thebuffer 30 of FIG. 1 and the recording system to provide data from thebuffer to cause the plurality of write heads 117 of FIG. 4 to writeprovided data to tracks of magnetic tape, comprising up to all sets ofthe write heads, as illustrated by “full head” data of FIG. 9.

If step 303 indicates a multi-set write, such as for synchronizedtransactions, in step 307, the controller 18 of FIG. 1 selectivelyoperates the buffer 30 and the recording system to provide data from thebuffer to cause a separate set of the plurality of write heads 117 ofFIG. 4 to write the provided data to tracks of magnetic tape. In step309 of FIG. 11, the controller saves the provided data, the operationcontinuing for the transaction until the full transaction has been bothwritten to magnetic tape and saved, as indicated by step 310. After thetransaction is both written to magnetic tape and saved, in step 311, thecontroller 18 of FIG. 1, additionally, for the synchronized datatransaction, returns a command complete at interface 21 upon completionof the writing a synchronized transaction to tracks of magnetic tape ina discontinuous manner. In step 315 of FIG. 11, the controller leaves anelongated gap, comprising an unrecorded gap and/or written separatorsignals to the magnetic tape following the written synchronizedtransaction, continuing the gap with or without separator signals untila subsequently received synchronized transaction is written to themagnetic tape following the separator signals or gap. During the sameoperation, the controller operates the buffer 30 of FIG. 1 and therecording system to provide saved data from the buffer to cause anotherseparate set of the plurality of write heads to write the saved andprovided data to other tracks of the magnetic tape. Thus, in step 320 ofFIG. 11, the controller determines whether enough data has been saved towarrant beginning the string of continuous rewritten transactions, byproviding and rewriting the saved data. If not, step 321 indicates await for at least one additional transaction to be saved, and thedetermination is repeated. In this example, the determination is made asbased on a threshold, for example, of the number of transactions or theamount of data or percentage of buffer capacity, that has been saved.Alternatively, a count may be maintained, and a counter may indicatewhen it reaches its full count.

When the controller is ready for rewriting in step 320, the controller,in step 322, selects the set of write heads and provides data from oneor more selected separate data flow outputs 125, 126 of the buffer 30,of FIG. 1, for example, via a selected recording channels 132 and 133,to the selected set of write heads 117 to rewrite the saved data at arewrite wrap. Then, in step 325 of FIG. 11, the controller releases thesaved transaction in the buffer to allow overwrite of the data by newdata transactions to be saved. Further, in step 326, the controllerreleases the same transaction at the BF wrap to allow overwrite of thedata by new data transactions to be written to the tape. The processreturns to step 320 to determine if the process is still ready forrewriting, or whether, for example, the buffer has run out of data to berewritten. Step 320 also is the point at which the determination is madeto move the tape to another position on the BF wrap and/or seek to analternate BF wrap and to continue to save data to be rewritten, asdiscussed above.

Step 330 provides the option of temporarily rewriting data that had beenoriginally discontinuously written and also saved in the buffer. Sincethe data is recorded on tape elsewhere, the original discontinuouslywritten data may be overwritten. Thus, when data is being rewritten onthe alternate track, new data may be discontinuously written at the sametime, overwriting the original discontinuously written data.

Thus, step 331 comprises temporarily rewriting the data transaction. Atransaction is selected for temporary rewriting based on its positionlaterally offset with respect to the location for rewriting transactionsthat are to be finally rewritten. When the data has been temporarilyrewritten, step 332 releases the original discontinuously writtentransaction so that it may be overwritten.

The temporarily rewritten data transaction is ultimately released instep 326 after the saved data transaction has been finally rewritten toa rewrite wrap in step 322.

The illustrated components of the magnetic tape drive and recordingsystem of FIG. 1, and the arrangement of the tape head of FIG. 4 may bevaried, combined, or combined functions may be separated, as is known tothose of skill in the art. The illustrated steps of FIGS. 11 may bealtered in sequence, omitted, or other steps added, as is known to thoseof skill in the art.

While the preferred embodiments of the present invention have beenillustrated in detail, it should be apparent that modifications andadaptations to those embodiments may occur to one skilled in the artwithout departing from the scope of the present invention as set forthin the following claims.

1. A recording system for a magnetic tape drive, said magnetic tapedrive having a plurality of write heads for writing to magnetic tapewhile said magnetic tape is moved longitudinally with respect to saidplurality of write heads, said recording system comprising: at least onebuffer storing data to be written to magnetic tape, said at least onebuffer having a plurality of separate data flow outputs; a plurality ofrecording channels receiving output data flow from said plurality ofseparate data flow outputs, and for operating separate sets of saidplurality of write heads to write data to magnetic tape, said separatesets of said plurality of write heads configured to write to one set oftracks and to another set of tracks of said magnetic tape at a time,each of said sets of tracks comprising a wrap; and a controlleroperating said at least one buffer and said plurality of recordingchannels, said controller: operating said at least one buffer and one ofsaid plurality of recording channels to provide data from said at leastone buffer to cause a separate set of said plurality of write heads towrite said provided data to one wrap of magnetic tape; saving saidprovided data at said at least one buffer; and during the sameoperation, operating said at least one buffer and another of saidplurality of recording channels to provide saved said data from said atleast one buffer to cause another separate set of said plurality ofwrite heads to rewrite said saved data to another wrap of said magnetictape in a continuous arrangement, whereby said separate sets of saidplurality of write heads write said data to magnetic tape and rewritesaid saved data to said magnetic tape during the same operation, saidrewritten data comprising a continuous arrangement of said data.
 2. Therecording system of claim 1, wherein said magnetic tape driveadditionally comprises a wrap control for translating said plurality ofwrite heads laterally to different sets of wraps of said tracks ofmagnetic tape, such that either of said sets of write heads may writedata to at least some of said wraps; and wherein said controlleroperates said wrap control, said at least one buffer and said pluralityof recording channels to access said wraps in a sequence, such that awrap having said data to be saved follows in said sequence a wrap atwhich said data is rewritten, such that a continuous string of wraps arefirst written with said data to be saved, and then are overwritten withsaid rewritten data.
 3. The recording system of claim 2, wherein saidmagnetic tape drive additionally comprises a plurality of read heads forreading from magnetic tape while said magnetic tape is movedlongitudinally with respect to said plurality of read heads, and a readdata system, wherein said controller additionally operates said readdata system to read one of said wraps at a time with one set of saidplurality of read heads.
 4. The recording system of claim 1, whereinsaid magnetic tape drive additionally comprises a wrap control fortranslating said plurality of write heads laterally to different wrapsof said tracks of magnetic tape, and wherein said controller operatessaid wrap control, said at least one buffer and said plurality ofrecording channels to write said provided data from said at least onebuffer to one of said wraps in a sequence of said wraps, and to rewritesaid saved data to another of said wraps that is offset from said one ofsaid wraps.
 5. The recording system of claim 1, wherein said controlleradditionally operates said at least one buffer and one of said recordingchannels to cause a set of said plurality of write heads to temporarilyrewrite selected saved said data from said at least one buffer to saidmagnetic tape, and releases said selected data as originally written toat least one wrap of said magnetic tape, said release allowing saidoriginally written data to be overwritten.
 6. A recording system for amagnetic tape drive, said magnetic tape drive having a plurality ofwrite heads for writing to magnetic tape while said magnetic tape ismoved longitudinally with respect to said plurality of write heads, saidrecording system comprising: at least one buffer storing data to bewritten to magnetic tape, said at least one buffer having a plurality ofseparate data flow outputs; a plurality of recording channels receivingoutput data flow from said plurality of separate data flow outputs, andfor operating separate sets of said plurality of write heads to writedata to magnetic tape, said separate sets of said plurality of writeheads configured to write to one set of tracks and to another set oftracks of said magnetic tape at a time, each of said sets of trackscomprising a wrap; and a controller operating said at least one bufferand said plurality of recording channels, said controller: selectivelyoperating said at least one buffer and one of said plurality ofrecording channels to provide data from said at least one buffer tocause a separate set of said plurality of write heads to write saidprovided data from said at least one buffer to one wrap of magnetictape, and saving said provided data; and during the same operation,operating said at least one buffer and another of said plurality ofrecording channels to provide saved said data from said at least onebuffer to cause another separate set of said plurality of write heads towrite said saved and provided data to another wrap of said magnetictape; and selectively operating said at least one buffer and saidplurality of recording channels to provide data from said at least onebuffer to cause said plurality of write heads to write provided data towraps of magnetic tape.
 7. The recording system of claim 6, wherein saidmagnetic tape drive additionally comprises a plurality of read heads forreading from magnetic tape while said magnetic tape is movedlongitudinally with respect to said plurality of read heads, and a readdata system, wherein said controller additionally selectively operatessaid read data system to read one of said wraps at a time with one setof said read heads; and selectively operates said read data system toread a plurality of said wraps at a time with said plurality of readheads.
 8. A magnetic tape drive, comprising: a drive system for moving amagnetic tape longitudinally; a plurality of write heads for writing tosaid magnetic tape while said magnetic tape is moved longitudinally bysaid drive system, said write heads configured into separate sets ofwrite heads to write to one set of tracks and to another set of tracksof said magnetic tape at a time, each of said sets of tracks comprisinga wrap; an interface for receiving data to be written to said magnetictape; at least one buffer storing data received at said interface, saidat least one buffer having a plurality of separate data flow outputs; arecording system receiving output data flow from said plurality ofseparate data flow outputs, and for operating said separate sets of saidplurality of write heads to write data to magnetic tape; and acontroller operating said at least one buffer and said recording system,said controller: operating said at least one buffer and one of saidrecording system to provide data from said at least one buffer to causea separate set of said plurality of write heads to write said provideddata from said at least one buffer to one wrap of magnetic tape; savingsaid provided data at said at least one buffer; and during the sameoperation, operating said at least one buffer and another of saidrecording system to provide saved said data from said at least onebuffer to cause another separate set of said plurality of write heads torewrite said saved data to another wrap of said magnetic tape in acontinuous arrangement, whereby said separate sets of said plurality ofwrite heads write said data to magnetic tape and rewrite said saved datato said magnetic tape during the same operation, said rewritten datacomprising a continuous arrangement of said data.
 9. The magnetic tapedrive of claim 8, additionally comprising a wrap control for translatingsaid plurality of write heads laterally to different sets of wraps ofsaid tracks of magnetic tape, such that either of said sets of writeheads may write data to at least some of said wraps; and wherein saidcontroller operates said wrap control, said at least one buffer and saidplurality of recording channels to access said wraps in a sequence, suchthat a wrap having said data to be saved follows in said sequence a wrapat which said data is rewritten, such that a continuous string of wrapsare first written with said data to be saved, and then are overwrittenwith said rewritten data.
 10. The magnetic tape drive of claim 9,wherein said magnetic tape drive additionally comprises a plurality ofread heads for reading from magnetic tape while said magnetic tape ismoved longitudinally with respect to said plurality of read heads; and aread data system; and wherein said controller additionally operates saidread data system to read one of said wraps at a time with one set ofsaid plurality of read heads.
 11. The magnetic tape drive of claim 8,wherein said magnetic tape drive additionally comprises a wrap controlfor translating said plurality of write heads laterally to differentwraps of said tracks of magnetic tape, and wherein said controlleroperates said wrap control, said at least one buffer and said recordingsystem to write provided data from said at least one buffer to one ofsaid wraps in a sequence of said wraps, and to rewrite said saved datato another of said wraps that is offset from said one of said wraps. 12.The magnetic tape drive of claim 8, wherein said controller additionallyoperates said at least one buffer and one of said recording channels tocause a set of said plurality of write heads to temporarily rewriteselected saved said data from said at least one buffer to said magnetictape, and releases said selected data as originally written to at leastone wrap of said magnetic tape, said release allowing said originallywritten data to be overwritten.
 13. A magnetic tape drive, comprising: adrive system for moving a magnetic tape longitudinally; a plurality ofwrite heads for writing to said magnetic tape while said magnetic tapeis moved longitudinally by said drive system, said write headsconfigured into separate sets of write heads to write to one set oftracks and to another set of tracks of said magnetic tape at a time,each of said sets of tracks comprising a wrap; an interface forreceiving data to be written to said magnetic tape; at least one bufferstoring data received at said interface, said at least one buffer havinga plurality of separate data flow outputs; a recording system receivingoutput data flow from said plurality of separate data flow outputs, andfor operating said separate sets of said plurality of write heads towrite data to magnetic tape; and a controller operating said at leastone buffer and said recording system, said controller: selectivelyoperating said at least one buffer and one of said recording system toprovide data from said at least one buffer to cause a separate set ofsaid plurality of write heads to write said provided data from said atleast one buffer to one wrap of magnetic tape, and saving said provideddata; and during the same operation, operating said at least one bufferand another of said recording system to provide saved said data fromsaid at least one buffer to cause another separate set of said pluralityof write heads to write said saved and provided data to another wrap ofsaid magnetic tape; and selectively operating said at least one bufferand said recording system to provide data from said at least one bufferto cause said plurality of write heads to write provided data to wrapsof magnetic tape.
 14. The magnetic tape drive of claim 13, additionallycomprising a plurality of read heads for reading from magnetic tapewhile said magnetic tape is moved longitudinally with respect to saidplurality of read heads; and a read data system; and wherein saidcontroller additionally selectively operates said read data system toread one of said wraps at a time with one set of said plurality of readheads; and selectively operates said read data system to read aplurality of said wraps at a time with said plurality of read heads. 15.A method for writing data to magnetic tape, for a magnetic tape drive,said magnetic tape drive having a plurality of write heads for writingto magnetic tape while said magnetic tape is moved longitudinally withrespect to said plurality of write heads, said method comprising thesteps of: buffering data to be written to magnetic tape; providing saidbuffered data to cause a separate set of said plurality of write heads,said separate set of write heads configured to write to one set oftracks at a time comprising a wrap, to write said provided data fromsaid at least one buffer to one wrap of magnetic tape; saving saidprovided data; and during the same operation, providing saved said datato cause another separate set of said plurality of write heads, saidanother separate set of write heads configured to write to another setof tracks at a time comprising another wrap, to rewrite said saved datato another wrap of said magnetic tape in a continuous arrangement,whereby said separate sets of said plurality of write heads write saiddata to magnetic tape and rewrite said saved data to said magnetic tapeduring the same operation, said rewritten data comprising a continuousarrangement of said data.
 16. The method of claim 15, wherein saidmagnetic tape drive additionally accesses said plurality of write headsto different sets of wraps of said tracks of magnetic tape, such thateither of said sets of write heads may write data to at least some ofsaid wraps; additionally comprising the steps of accessing said wraps ina sequence, such that a wrap having said data to be saved follows insaid sequence a wrap at which said data is rewritten, such that acontinuous string of wraps are first written with said data to be saved,and then are overwritten with said rewritten data.
 17. The method ofclaim 16, wherein said magnetic tape drive additionally comprises aplurality of read heads for reading from magnetic tape while saidmagnetic tape is moved longitudinally with respect to said plurality ofread heads, and wherein said method additionally comprises the steps ofreading one of said wraps at a time with one set of said plurality ofread heads.
 18. The method of claim 15, wherein said magnetic tape driveadditionally accesses said plurality of write heads to different wrapsof said tracks of magnetic tape; wherein said step of providing saidbuffered data to cause a separate set of said plurality of write headsto write said provided data from said at least one buffer to one wrap ofmagnetic tape, additionally comprises writing said provided data to oneof said wraps in a sequence of wraps; and wherein said step of, duringthe same operation, providing saved said data transactions to causeanother separate set of said plurality of write heads to rewrite savedsaid data transactions to another wrap of said magnetic tape,additionally comprises rewriting saved said data to said magnetic tapeto another of said wraps that is offset from said one of said wraps. 19.The method of claim 15, additionally comprising the steps of: providingselected saved said data to cause a set of said plurality of write headsto temporarily rewrite said selected saved data to said magnetic tape;and releasing said selected data as originally written to said at leastone wrap of magnetic tape in said buffered data providing step, saidrelease allowing said originally written data to be overwritten.
 20. Amethod for writing data to magnetic tape, for a magnetic tape drive,said magnetic tape drive having a plurality of write heads for writingto magnetic tape while said magnetic tape is moved longitudinally withrespect to said plurality of write heads, said method comprising thesteps of: selectively providing data to be written to magnetic tape tocause a separate set of said plurality of write heads, said separate setof write heads configured to write to one set of tracks at a timecomprising a wrap, to write said provided data to one wrap of magnetictape; saving said provided data; and during the same operation,providing saved said data to cause another separate set of saidplurality of write heads, said another separate set of write headsconfigured to write to another set of tracks at a time comprisinganother wrap, to write said saved and provided data to another wrap ofsaid magnetic tape; and selectively providing data to be written tomagnetic tape to cause said plurality of write heads to write provideddata to wraps of magnetic tape.
 21. The method of claim 20, wherein saidmagnetic tape drive additionally comprises a plurality of read heads forreading from magnetic tape while said magnetic tape is movedlongitudinally with respect to said plurality of read heads; and whereinsaid method additionally comprises the steps of selectively reading oneof said wraps at a time with one set of said plurality of read heads;and selectively reading a plurality of said wraps at a time with saidplurality of read heads.
 22. A computer readable medium encoded with acomputer program product usable with at least one programmable computerprocessor having computer readable code embodied therein, said at leastone programmable computer processor for operating a recording system fora magnetic tape drive; said magnetic tape drive having a plurality ofwrite heads for writing to magnetic tape while said magnetic tape ismoved longitudinally with respect to said plurality of write heads; saidrecording system comprising at least one buffer storing data to bewritten to magnetic tape, said at least one buffer having a plurality ofseparate data flow outputs; and said recording system for operatingseparate sets of said plurality of write heads to write data from saidplurality of data flow outputs to magnetic tape; comprising: computerreadable program code causing said at least one programmable computerprocessor to operate said at least one buffer and said recording systemto provide data from said at least one buffer to cause a separate set ofsaid plurality of write heads, said separate set of write headsconfigured to write to one set of tracks at a time comprising a wrap, towrite said provided data from said at least one buffer to one wrap ofmagnetic tape; computer readable program code causing said at least oneprogrammable computer processor to save said provided data at said atleast one buffer; and computer readable program code causing said atleast one programmable computer processor to, during the same operation,operate said at least one buffer and said recording system to providesaved said data from said at least one buffer to cause another separateset of said plurality of write heads, said another separate set of writeheads configured to write to another set of tracks at a time comprisinganother wrap, to rewrite said saved data to another wrap of saidmagnetic tape in a continuous arrangement, whereby said separate sets ofsaid plurality of write heads write said data to magnetic tape andrewrite said saved data to said magnetic tape during the same operation,said rewritten data comprising a continuous arrangement of said data.23. The computer readable medium of claim 22, wherein said magnetic tapedrive comprises a wrap control for translating said plurality of writeheads laterally to different sets of wraps of said tracks of magnetictape, such that either of said sets of write heads may write data to atleast some of said wraps; and said computer program product additionallycomprises: computer readable program code causing said at least oneprogrammable computer processor to operate said wrap control, said atleast one buffer and said recording system to cause said at least oneprogrammable computer processor to access said wraps in a sequence, suchthat a wrap having said data to be saved follows in said sequence a wrapat which said data is rewritten, such that a continuous string of wrapsare first written with said data to be saved, and then are overwrittenwith said rewritten data.
 24. The computer readable medium of claim 23,wherein said magnetic tape drive additionally comprises a plurality ofread heads for reading from magnetic tape while said magnetic tape ismoved longitudinally with respect to said plurality of read heads, and aread data system; said computer program product additionally comprisescomputer readable program code causing said at least one programmablecomputer processor to operate said read data system to read one of saidwraps at a time with one set of said plurality of read heads.
 25. Thecomputer readable medium of claim 22, wherein said magnetic tape driveadditionally comprises a wrap control for translating said plurality ofwrite heads laterally to different wraps of said tracks of magnetictape; said computer program product additionally comprises computerreadable program code causing said at least one programmable computerprocessor to operate said wrap control, said at least one buffer andsaid recording system to write provided data from said at least onebuffer to one of said wraps in a sequence of said wraps, and to rewritesaid saved data to another of said wraps that is offset from said one ofsaid wraps.
 26. The computer readable medium of claim 22, additionallycomprising: computer readable program code causing said at least oneprogrammable computer processor to operate said at least one buffer andsaid recording system to provide selected saved said data from said atleast one buffer to cause a set of said plurality of write heads totemporarily rewrite said selected saved data to magnetic tape; andcomputer readable program code causing said at least one programmablecomputer processor to release said selected data as originally writtento at least one wrap of said magnetic tape, said release allowing saidoriginally written data to be overwritten.
 27. A computer readablemedium encoded with a computer program product usable with at least oneprogrammable computer processor having computer readable code embodiedtherein, said at least one programmable computer processor for operatinga recording system for a magnetic tape drive; said magnetic tape drivehaving a plurality of write heads for writing to magnetic tape whilesaid magnetic tape is moved longitudinally with respect to saidplurality of write heads; said recording system comprising at least onebuffer storing data to be written to magnetic tape, said at least onebuffer having a plurality of separate data flow outputs; and saidrecording system for operating separate sets of said plurality of writeheads to write data from said plurality of separate data flow outputs tomagnetic tape; comprising: computer readable program code causing saidat least one programmable computer processor to selectively operate saidat least one buffer and said recording system to provide data from saidat least one buffer to cause a separate set of said plurality of writeheads, said separate set of write heads configured to write to one setof tracks at a time comprising a wrap, to write said provided data toone wrap of magnetic tape, and saving said provided data; and during thesame operation, operate said at least one buffer and another of saidrecording system to provide saved said data from said at least onebuffer to cause another separate set of said plurality of write heads,said another separate set of write heads configured to write to anotherset of tracks at a time comprising another wrap, to write said saved andprovided data to another wrap of said magnetic tape; and computerreadable program code causing said at least one programmable computerprocessor to selectively operate said at least one buffer and saidrecording system to provide data from said at least one buffer to causesaid plurality of write heads to write provided data to wraps ofmagnetic tape.
 28. The computer readable medium of claim 27, whereinsaid magnetic tape drive additionally comprises a plurality of readheads for reading from magnetic tape while said magnetic tape is movedlongitudinally with respect to said plurality of read heads; and a readdata system; and wherein said computer program product additionallycomprises computer readable program code causing said at least oneprogrammable computer processor to selectively operate said read datasystem to read one of said wraps at a time with one set of saidplurality of read heads; and selectively operate said read data systemto read a plurality of said wraps at a time with said plurality of readheads.
 29. Control logic for a magnetic tape drive, said magnetic tapedrive having a plurality of write heads for writing to magnetic tapewhile said magnetic tape is moved longitudinally with respect to saidplurality of write heads; at least one buffer storing data to be writtento magnetic tape, said at least one buffer having a plurality ofseparate data flow outputs; and a recording system for operatingseparate sets of said plurality of write heads to write data from saidplurality of separate data flow outputs to magnetic tape; said controllogic: operating said at least one buffer and said recording system toprovide data from said at least one buffer to cause a separate set ofsaid plurality of write heads, said separate set of write headsconfigured to write to one set of tracks at a time comprising a wrap, towrite said provided data from said at least one buffer to one wrap ofmagnetic tape; saving said provided data at said at least one buffer;and during the same operation, operating said at least one buffer andsaid recording system to provide saved said data from said at least onebuffer to cause another separate set of said plurality of write heads,said another separate set of write heads configured to write to anotherset of tracks at a time comprising another wrap, to rewrite said saveddata to another wrap of said magnetic tape in a continuous arrangement,whereby said separate sets of said plurality of write heads write saiddata to magnetic tape and rewrite said saved data to said magnetic tapeduring the same operation, said rewritten data comprising a continuousarrangement of said data.
 30. The control logic of claim 29, whereinsaid magnetic tape drive additionally comprises a wrap control fortranslating said plurality of write heads laterally to different sets ofwraps of said tracks of magnetic tape, such that either of said sets ofwrite heads may write data to at least some of said wraps; and whereinsaid control logic operates said wrap control, said at least one bufferand said recording system to access said wraps in a sequence, such thata wrap having said data to be saved follows in said sequence a wrap atwhich said data is rewritten, such that a continuous string of wraps arefirst written with said data to be saved, and then are overwritten withsaid rewritten data.
 31. The control logic of claim 30, wherein saidmagnetic tape drive additionally comprises a plurality of read heads forreading from magnetic tape while said magnetic tape is movedlongitudinally with respect to said plurality of read heads, and a readdata system, wherein said control logic additionally operates said readdata system to read one of said wraps at a time with one set of saidplurality of read heads.
 32. The control logic of claim 29, wherein saidmagnetic tape drive additionally comprises a wrap control fortranslating said plurality of write heads laterally to different wrapsof said tracks of magnetic tape, and wherein said control logic operatessaid wrap control, said at least one buffer and said recording system towrite provided data from said at least one buffer to one of said wrapsin a sequence of said wraps, and to rewrite said saved data to anotherof said wraps that is offset from said one of said wraps.
 33. Thecontrol logic of claim 29, wherein said control logic operates said atleast one buffer and said recording system to cause a set of saidplurality of write heads to temporarily rewrite selected saved said datafrom said at least one buffer to said magnetic tape, and releases saidselected data as originally written to at least one wrap of saidmagnetic tape, said release allowing said originally written data to beoverwritten.
 34. Control logic for a magnetic tape drive, said magnetictape drive having a plurality of write heads for writing to magnetictape while said magnetic tape is moved longitudinally with respect tosaid plurality of write heads; at least one buffer storing data to bewritten to magnetic tape, said at least one buffer having a plurality ofseparate data flow outputs; and a recording system for operatingseparate sets of said plurality of write heads to write data from saidplurality of separate data flow outputs to magnetic tape; said controllogic: selectively operating said at least one buffer and said recordingsystem to provide data from said at least one buffer to cause a separateset of said plurality of write heads, said separate set of write headsconfigured to write to one set of tracks at a time comprising a wrap, towrite said provided data to one wrap of magnetic tape, and saving saidprovided data; and during the same operation, operating said at leastone buffer and said recording system to provide saved said data fromsaid at least one buffer to cause another separate set of said pluralityof write heads, said another separate set of write heads configured towrite to another set of tracks at a time comprising another wrap, towrite said saved and provided data to another wrap of said magnetictape; and selectively operating said at least one buffer and saidrecording system to provide data from said at least one buffer to causesaid plurality of write heads to write said provided data to wraps ofmagnetic tape.
 35. The control logic of claim 34, wherein said magnetictape drive additionally comprises a plurality of read heads for readingfrom magnetic tape while said magnetic tape is moved longitudinally withrespect to said plurality of read heads, and a read data system, whereinsaid control logic additionally selectively operates said read datasystem to read one of said wraps at a time with one set of saidplurality of read heads; and selectively operates said read data systemto read a plurality of said wraps at a time with said plurality of readheads.